francisé
L'avantage est de pouvoir directement modifier et exécuter le code d'un algorithme (script), avec une lisibilité accrue par rapport à du pseudo-code, et en utilisant une syntaxe commune aux langages parmi les plus populaires (comme C, C++, Java et Javascript).
En Javascript on utilise une syntaxe
relativement universelle (les exemples donnés sont
on ajoute qq_chose à machin, c'est donc aussi un mode d'affectation (en général plus efficace à l'exécution que le calcul suivi d'une réaffectation).
Pour la mise en place d'algorithmes, Algo permet d'utiliser
le symbole chapeau
comme dans x^n pour exprimer l'exponentiation dans les expressions algébriques
(ce qui revient aussi à x.pow(n)), et
des mots français à la place (ou en plus) de la syntaxe usuelle (en anglais) :
si, sinon, ET, OU, NON, pour, modulo, fonction, retourner (ou retourne), tant que, indéfini.
Ces mots correspondent respectivement au code JS suivant :
if, else, &&, ||, !, for, %, function, return, while, undefined.
On peut aussi utiliser des mots neutres comme alors et faire
pour améliorer la lisibilité en français et exploiter le Javascript avec
une syntaxe francisée
, comme sur l'exemple :
Le même exemple avec des mots-clés purement Javascript, sachant que les instructions effacer et écrire sont spécifiques à AlgoDok-fr, donc en français :
On peut aussi utiliser des variables à la main
(en cliquant dessus)
ou par programme, ou par instruction cliquable comme celle-ci : n = 3758.
D'ou une variante de l'algorithme précédent :
On peut aussi créer dynamiquement une variable globale, considérée alors plutôt comme
variable d'entrée
.
Ci-dessous deux exemples, le premier avec une affectation initiale et l'autre sans :
Pour plus de détails sur les instructions francisées, voir la documentation de référence, partie 4 et suivantes, car Algo permet de faire bien plus que le Javascript standard.
En fait, Algo est un exemple minimaliste et représentatif de l'usage d'un langage
quelconque pour exprimer des instructions linguistiques qu'
C'est pourquoi AlgoDok ne signale que des erreurs de syntaxe ou d'exécution portant
En pratique Algo est souvent exploité avec le module complémentaire
Algo-fr qui,
après importation, redéfinit la fonction AlgoDok.toJSalgorithmique
en langage vernaculaire.
Avec Algo-fr on peut par exemple commencer les mots-clés français par une majuscule, et aussi utiliser égale et ≠ à la place de == et !=, respectivement. C'est en particulier intéressant pour définir les tests et boucles les plus courants, comme on peut le montrer sur l'exemple précédent.
Avec Algo-fr on définit de plus AlgoDok.fromJS
C'est en forgeant qu'on devient forgeron
dit l'adage, et c'est tout à fait vrai pour la programmation.
Le mieux est donc de faire par soi-même pour apprendre à developper une pensée algorithmique
,
par exemple avec un tutoriel conçu à cet effet, où Algo-fr a été
complété
avec des instructions d'affichage et de calcul mathématique, entre autres, et colorisé intensivement
afin de plus facilement détecter les erreurs de frappe.
Ce qu'on peut le voir sur l'exemple suivant.
Avec Formulo,
on peut écrire facilement des formules mathématiques, comme celle qui suit :